'use strict';

const Controller = require('egg').Controller;


class SearchController extends Controller {

  // 新增 用户搜索记录
  async create() {
    const { ctx } = this;
    const res = await ctx.service.web.search.create(ctx.request.body);
    res ? ctx.helper.success('新增用户搜索记录成功', res) : ctx.helper.error('新增用户搜索记录失败', 400);
  }


  // 获取用户搜索历史记录
  async getUserHistory() {
    const { ctx } = this;
    if (!ctx.state.user) return ctx.helper.success('当前未登录 获取用户搜索历史记录失败');
    ctx.request.query.user_id = ctx.state.user.id;
    const res = await ctx.service.web.search.getUserHistory(ctx.request.query);
    res.list.length ? ctx.helper.success('获取用户搜索历史记录成功', res) : ctx.helper.success('未查询到用户搜索历史记录', res);
  }

  // 获取热门搜索
  async getHotSearch() {
    const { ctx } = this;
    const res = await ctx.service.web.search.getHotSearch(ctx.request.query);
    res.list.length ? ctx.helper.success('获取热门搜索成功', res) : ctx.helper.success('未查询到热门搜索记录', res);
  }


  // 删除单条用户搜索历史记录
  async delRowSearchHistory() {
    const { ctx } = this;
    const res = await ctx.service.web.search.delRowSearchHistory(ctx.params.id);
    res ? ctx.helper.success('删除用户搜索历史记录成功') : ctx.helper.error('删除用户搜索历史记录失败', 400);
  }

  // 删除用户所有搜索历史记录
  async delAllSearchHistory() {
    const { ctx } = this;
    const res = await ctx.service.web.search.delAllSearchHistory();
    res ? ctx.helper.success('删除用户所有搜索历史记录成功', res) : ctx.helper.error('删除用户所有搜索历史记录失败', 400);
  }

  // 修改文章分类
  // async update() {
  //   const { ctx } = this;
  //   const res = await ctx.service.article.updateArticle(ctx.params.id, ctx.request.body);
  //   res && res[0] !== 0 ? ctx.helper.success('修改文章成功') : ctx.helper.error('修改文章失败', 400);
  // }
  // 根据获取详细资料
  // async show() {
  //   const { ctx } = this;
  //   const res = await ctx.service.article.getInfo(ctx.params.id);
  //   res ? ctx.helper.success('获取成功', res) : ctx.helper.error('获取失败', 400);
  // }
}

module.exports = SearchController;
